package com.appkubes.mall.core.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * 商品表
 * @author Rongjie
 */
@Data
@TableName("mall_goods")
@KeySequence(value = "mall_goods_SEQ")
@ApiModel(value = "MallGoods对象")
public class MallGoods implements Serializable{

       @ApiModelProperty(value = "归属管理员的uuid")
       private String appKey;

       @TableId(value = "goods_key", type = IdType.UUID)
       private String goodsKey;

       private String storeKey;

       @ApiModelProperty(value = "商品分类id")
       private String catKey;

       @ApiModelProperty(value = "商品编号")
       private String goodsCode;

       @ApiModelProperty(value = "商品名称")
       private String name;

       @ApiModelProperty(value = "单位")
       private String unit;

       @ApiModelProperty(value = "重量")
       private Double weight;

       @ApiModelProperty(value = "排序 从大到小", example = "1")
       private Integer sort;

       @ApiModelProperty(value = "商品缩略图(封面图)")
       private String pic;

       @ApiModelProperty(value = "商品轮播图")
       private String pics;

       @ApiModelProperty(value = "商品销售价")
       private BigDecimal price;

       @ApiModelProperty(value = "商品成本价")
       private BigDecimal costPrice;

       @ApiModelProperty(value = "商品原价展示使用")
       private BigDecimal originalPrice;

       @ApiModelProperty(value = "商品详细")
       private String details;

       @ApiModelProperty(value = "商品规格参数")
       private String specifications;

       @ApiModelProperty(value = "服务内容(正品保障)")
       private String service;

       @ApiModelProperty(value = "标签，使用,分割")
       private String tags;

       @ApiModelProperty(value = "库存", example = "1")
       private Integer stock;

       @ApiModelProperty(value = "虚拟库存", example = "1")
       private Integer virtualStock;

       @ApiModelProperty(value = "真实库存", example = "1")
       private Integer realStock;

       @ApiModelProperty(value = "销量 销量支付完成", example = "1")
       private Integer salesNum;

       @ApiModelProperty(value = "虚拟销量", example = "1")
       private Integer virtualNum;

       @ApiModelProperty(value = "1使用规格", example = "1")
       private Integer useAttr;

       @ApiModelProperty(value = "创建时间", example = "1")
       private Integer createTime;

       @ApiModelProperty(value = "修改时间", example = "1")
       private Integer updateTime;

       @ApiModelProperty(value = "1启用状态", example = "1")
       private Integer state;

       @ApiModelProperty(value = "是否推荐", example = "1")
       private Integer isHot;

       @ApiModelProperty(value = "是否开启分销：0不开启；1开启", example = "1")
       private Integer isDistribute;

       @ApiModelProperty(value = "1未审核 2审核成功 3审核失败", example = "1")
       private Integer checkState;

       private String failReason;

       private Integer beginTime;

       private Integer endTime;

       @ApiModelProperty(value = "审核时间", example = "1")
       private Integer checkTime;

       @ApiModelProperty(value = "副标题")
       private String subheading;

       @ApiModelProperty(value = "限购数量", example = "1")
       private Integer restriction;

       @ApiModelProperty(value = "附加分类(客户端多条件搜索)")
       private String cateList;

       @ApiModelProperty(value = "供货商姓名")
       private String supplierName;

       @ApiModelProperty(value = "供货商电话")
       private String supplierTel;

       @ApiModelProperty(value = "采购人姓名")
       private String purchaseName;

       @ApiModelProperty(value = "采购地址")
       private String purchaseAddress;

       @ApiModelProperty(value = "商品类型；1:商品；2:包装物；3:赠品", example = "1")
       private Integer type;

       @ApiModelProperty(value = "送vip权益天数", example = "1")
       private Integer vipTime;

       @ApiModelProperty(value = "0：关闭分期；1:开启分期", example = "1")
       private Integer isStage;

       @ApiModelProperty(value = "版本号", example = "1")
       @Version
       private Integer version;

       @ApiModelProperty(value = "多规格模板id")
       private String specificTemplateKey;

}
